BEAM (machine virtuelle)

BEAM est la machine virtuelle au cœur de la plateforme Open Telecom (OTP) Erlang[1]. BEAM fait partie de l'environnement d'exécution Erlang (Erlang Run-Time System, ERTS), qui compile le code source Erlang en bytecode, qui est ensuite exécuté sur BEAM[2],[3]. Les fichiers de bytecode BEAM portent l'extension de fichier .beam[4].

À l'origine, BEAM était l'abréviation de Bogdan's Erlang Abstract Machine, du nom de Bogumil « Bogdan » Hausman, qui a écrit la version originale. Aujourd’hui, elle peut signifier à Björn's Erlang Abstract Machine, d'après Björn Gustavsson, qui a écrit et maintient la version actuelle[1],[5]. Les deux développeurs ont travaillé sur le système chez Ericsson[6], [7].

Le prédécesseur de BEAM était JAM (Joe's Abstract Machine), qui était la première machine virtuelle pour le langage Erlang et a été écrite par Joe Armstrong.

BEAM ne s'appuie pas sur les threads du système d'exploitation pour le multithreading, mais implémente son propre système multitâche. Il est disponible pour Windows, Mac OS X et différentes distributions Linux.[réf. nécessaire]

  1. a et b (en) « The Erlang Runtime System », sur happi.github.io (consulté le )
  2. (en) Logan Martin, Erlang and OTP in action, Stamford, CT, Manning Pub, (ISBN 9781933988788, OCLC 747046900)
  3. (en-US) « Most Popular Programming Languages of 2018 », Elite Infoworld,‎
  4. (en) Kessin Zachary., Building web applications with Erlang, Beijing, O'Reilly, (ISBN 9781449309961, OCLC 802882644)
  5. (en) « erlang/otp », sur github.com/erlang (consulté le )
  6. (en) Kerjouan, « Serialization series — Do you speak Erlang ETF or BERT? (part 1) », sur medium.com/@niamtokik, (consulté le )
  7. (en) « Erlang BEAM Instruction Set », sur www.cs-lab.org (consulté le )

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy